/*
*	Copyright (C) 2014  Julio Montes, Mario Carrillo
*
*	Julio Montes e-mail: imc.coder@gmail.com
*
*	Mario Carrillo e-mail: mario_90ago@live.com.mx
*
*	BSD 3-Clause License
*/

#ifndef IAMANAGER_H
#define IAMANAGER_H

#include <wx/wx.h>
#include <wx/aui/aui.h>

class iaEditorManager;
class iaDialogManager;
class iaMainFrame;
class iaMain;

class iaManager
{
friend class iaMain;
friend class iaMainFrame;

public:
    virtual ~iaManager();

    static iaManager *Get();

    wxAuiNotebook *GetProjectNotebook() const;

    wxAuiNotebook *GetLogNotebook() const;

    iaDialogManager *GetDialogManager() const;
protected:
private:
    static iaManager manager;

    void CreateProjectNotebook( wxWindow *parent );
    void CreateLogNotebook( wxWindow *parent );
    void CreateDialogManager( wxWindow *parent );

    iaMainFrame *mainFrame;
    iaEditorManager *editorManager;
    wxAuiNotebook *projectNotebook;
    wxAuiNotebook *logNotebook;
    iaDialogManager *dialogManager;
};

#endif // IAMANAGER_H
